Dynamic card verification values and credit transactions

ABSTRACT

A system and method for providing card verification values for card-not-present transactions is described. In one example, a user&#39;s computing device stores single-use CVVs to be provided from a secure wallet. The secure wallet may be software running on the user&#39;s computing device. Alternatively, it may be an external device connectable to the user&#39;s computing device, which accesses the external device to obtain the single-use CVV.

CROSS-REFERENCE TO RELATED APPLICATIONS

This disclosure is related to and claims priority from U.S. provisional application Nos. 61/163,972, filed Mar. 27, 2009, and 61/308,493, filed Feb. 26, 2010, whose contents are expressly incorporated herein by reference.

RELATED ART

Credit card users are becoming increasingly aware of credit card fraud as identity theft and other crimes increase. While users may be able to prove to merchants and banks that they were not responsible for credit card charges and ultimately be not responsible for unauthorized charges, the hassle, lost opportunity costs, reduction in credit scores, and potential for long-term litigation can make credit card users wary of providing credit card information in-person or online.

Some credit card systems require authorization of the user and merchant. However, authorization of a given merchant is not protection that someone at the merchant (or someone monitoring a transaction) may abscond with a user's credit card number and associated verification information.

SUMMARY

Aspects of the invention relate to increasing security for credit card transactions. In some aspects, a dynamic card verification value may be provided in a secure fashion to a merchant and/or user. These and other aspects are described below.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 shows a credit card account in accordance with one or more aspects of the invention.

FIG. 2 shows interactions between a card issuer and a user's computing device in accordance with one or more aspects of the invention.

FIG. 3 shows interactions between a card issuer, a merchant, and a user's computing device in accordance with one or more aspects of the invention.

FIG. 4 shows various pathways for secure and unsecured information as accessed through a user's computing device in accordance with one or more aspects of the invention.

FIG. 5 shows various processes for obtaining credit card information in accordance with one or more aspects of the invention.

FIG. 6 shows various processes for obtaining a card verification value in accordance with one or more aspects of the invention.

FIG. 7 shows various examples for how to store multiple card verification values in accordance with one or more aspects of the invention.

DETAILED DESCRIPTION

Aspects of the invention relates generally to providing a card verification value for credit card transactions.

It is noted that various connections are set forth between elements in the following description. It is noted that these connections in general and, unless specified otherwise, may be direct or indirect and that this specification is not intended to be limiting in this respect.

FIG. 1 shows a credit card account in accordance with one or more aspects of the invention. A card issuer may provide a cardholder with a credit card account 101. Credit card account 101 may include a one or more credit cards that may be used for in-person credit card transactions 102 and card-not-present credit card transactions 104. As used herein, card-not-present credit card transactions 104 may include online purchases, off-line form-based transactions (for instance, fax and paper mail-based transactions), recurring transactions, and the like.

In physical card presentment transactions 102, a merchant obtains a credit card number, expiration date, and the name of the cardholder in step 103 to verify the credit card and, if the merchant asks for additional identification, to verify the identity of the cardholder.

In card-not-present transactions 104, a merchant obtains the credit card number, expiration date, name of the cardholder, and a card verification value CVV of the card as a way of verifying that the cardholder has the physical card in possession. Card verification values are also referred to as CV2, card security code CSC, card verification value code CVVC, verification code (V-code or V code), and card code verification CCV. For purposes of explanation, the term CVV is used for simplicity and is intended to cover the above card verification codes.

In some situations, in-person credit card transactions may be processed as card-not-present transactions when, for instance, a merchant's transaction terminal cannot read a magnetic strip on a user's card. If the merchant keys in the credit card number and the CVV of the card, that transaction may be processed as a card-not-present transaction as opposed to an in-person credit card transaction.

Both merchants and cardholders may be wary of each other in card-not-present transactions as, to the cardholder, these transactions may provide a greater degree of risk that the user's credit card information may be captured and used without authorization and as, to the merchant, these transactions may be based on illegally obtained credit card information. While the merchant may provide goods or services to the card user, the merchant may find out too late that the card transaction was fraudulent and the merchant is refused payment (or settlement) from the card issuer for the sold goods or services.

One or more aspects relate to providing enhanced security for card-not-present transactions by providing a dynamic card verification value to be used with a single transaction.

FIG. 2 shows interactions between a card issuer and a user's computing device in accordance with one or more aspects of the invention. FIG. 2 shows a card issuer 201 and a user's computing device 202. The user's portable computing device 202 may include a personal data assistant (PDA), Smart phone, or other portable computing device as known in the art. For instance, the user's computing device 202 may include a notebook computer, a cell phone with data capabilities, a handheld computing device with cellular capabilities, and the like. In another example, the user's computing device may also include a desktop computer, set top cable/satellite television box, gaming console, and other computing environments. In yet another example, the user may not own the computing device 202 but rather be only using the computing device 202 for a short period (for example, at an internet café).

Various examples and embodiments of the present invention are described with respect to one or more secure wallets. One of the wallets may be an external secure wallet 203. Another of the wallets may be an internal secure wallet 206. For purposes of explanation, both external wallet 203 and internal secure wallet 206 are described in the various embodiments. In some situations, external wallet 203 and internal secure wallet 206 may be used together or may be present to a user's portable computing device 202. It is appreciated, however, that only one of the wallets 203 or 206 may be present for use by a user. The wallets may be entirely encrypted software, firmware, hardware, or any combination thereof. For example, a secure processor requiring authentication before access may include various levels of encryption (e.g., using AES, Triple-DES, etc.). In one example, all data stored in a memory may be encrypted. In another example, only some of the information may be encrypted. Further, with respect to software, various functions may be embodied as software modules executed by a computer that control the computer to perform the functions. Examples of computer-readable media include hard drives, flash memory, other dynamic memory, and other static memory as known in the art.

External secure wallet 203 includes a memory 212 and an interface 204. External secure wallet 203 and optionally include one or more processors 211 to further enhance the security of the external secure wallet 203. For instance, the external secure wallet 203 may require various levels of authentication before it provides data to the user's computing device 202 via interface 204. For instance, external secure wallet 203 may be a flash memory device having a USB interface as interface 204. Similarly, external secure wallet 203 may be a variety of other external memory devices including, for instance, SD cards, Sony MemoryStick™, external hard drives, key fobs, and the like, each with one or more varieties of interfaces 204. While processor 211 is not required to be present on external secure wallet 203, some card issuers 201 may find enhanced security through separate authentication and other encryption/decryption capabilities to be useful in protecting credit card information.

User's computing device 202 may include secure wallet 206 running as purely software or as a combination of software and hardware. For instance, internal secure wallet 206 may include secure memory 210 that requires authentication for access to the contents within memory 210. In another example, the secure wallet may include a processor 209 that controls access to memory 210. In a further example, the user's computing device may include one or more processors 207 and/or memory 208. In this further example, the user's computing device may permit unsecured operations to occur in processor 207 and memory 208 without needing to access secure wallet 206 and/or external secure wallet 203.

User's computing device 202 may include a user interface 213 to receive user input 214 from a user. User interface 213 may include, for example, a microphone and speaker (for voice authentication), a numeric keypad, a display with one or more fields, accelerometers, one or more cameras, and the like. In some examples, user interface 213 may capture biometric information (iris scan, fingerprint, voice authentication (mentioned above) to provide enhanced authentication features to the internal or external secure wallets. One or more of these items may be used to provide a level of authentication (or multiple levels of authentication) to permit user access to at least one of internal secure wallet 206 and external secure wallet 203. The input from the user interface 213 may be compared with locally stored information or remotely obtained information to determine if the user is the authorized user of the device. Further, for enhanced security, the input from the user interface 213 may be sent to a remote site (for example, to the card issuer or other remote entity) to authenticate the user as the authorized user.

User's computing device 202 may further include a communication device/interface 205 as embodied in hardware, software, or a combination. For instance, communication interface/device 205 may be a cellular telephone transceiver, a wireless network application device (for instance, WiFi or WiMAX), Bluetooth, IR, and other wireless communication devices.

Communication device/interface 205 may permit user's computing device 202 to communicate with a communication device/interface 213 associated with card issuer 201. The communication pathway between the card issuer 201 and user's computing device 202 may be direct or indirect through one or more servers/routers/bridges/switches and the like. For instance, card issuer 201 and user's computing device 202 may be configured to indicate with each other over both cellular transmission systems as well as over the Internet via a WiFi connection.

Card issuer 201 may include a processing system 214 as known in the art (for instance, a server or farm of servers) and storage system 215 (for instance, large-scale database or cloud-based storage systems as known in the art).

In one or more aspects, card issuer 201 generates one or more card verification values that may be stored in at least one of external secure wallet 203 or internal secure wallet 206.

FIG. 3 shows interactions between a card issuer, a merchant, and a user's computing device in accordance with one or more aspects of the invention. FIG. 3 shows various examples of how a merchant maintain credit card information from a user can process that information with a card issuer. Here, card issuer 301, a user's computing device 302, and a merchant 303 are described for handling card-not-present transactions (and/or transactions requiring a CVV).

The user's computing device 302 may include one or more components similar to that of user's computing device 202 of FIG. 2. For aid of explanation, various optional components are shown in broken lines. For instance, user's computing device 302 may include external secure wallet 304 with a memory 305 (and optionally a processor, not shown), interface 306, and internal secure wallet 311 with memory 312 (and optionally a processor, not shown). In FIG. 3, user's computing device 302 includes a display 307 with at least one region in which to display information to a user. Here, three regions are shown for reference (first region 308, second region 309, and Nth region 310). Five internal communication paths are shown within user's computing device 302. It is appreciated that not all of these communication paths will exist in all computing devices 302 as based on the existence of various components. It is appreciated that the “paths” may be actually represented in dedicated hardware (for example, specific buses) in the user's computing device 302 or may be functional in nature (as being sent on one or more system buses or subsystem buses with appropriate headers).

A first path 321 is shown from interface 306 to communication device/interface 313. This first path is the most secure by permitting completely encrypted credit card information and CVVs to be sent to communication device/interface 313.

A second path 322 is shown from interface 306 to display 307. This second path 322 may be used to provide acknowledgment content or information signifying secure content (for instance, a stream of asterisks).

A third path 324 may be provided from internal secure wallet 311 to display 307. This path may be used to forward credit card information and a CVV to a user for display in display 307.

The user may write down or manually copy the displayed credit card information and CVV to credit card information entry fields from a merchant (for example, to a merchant's downloaded page from the Internet, from another network, or into paper documents for subsequent credit card transactions) via a fourth path 323.

A fifth path 325 permits the credit card information and CVV to be transferred directly from internal secure wallet 311 to the merchant 303 via interface 313. In this example, the fifth path 325 may be used to allow internal secure wallet 311 to populate fields on a displayed user interface as relating to a merchant's webpage to minimize errors in attempts to prevent theft of the credit card information and CVV by minimizing content displayed in display 307.

FIG. 4 shows a user's computing device 401 with pathways similar to those of FIG. 3. In FIG. 4, user's computing device 401 includes display 402, communication device/interface 403, and may include external secure wallet 404, interface 406, internal secure wallet 405, a first path 411 linking interface 406 and communication device/interface 403, a second path 407 linking interface 406 and display 402, a third path 409 linking internal secure wallet 405 and display 402, a fourth path 408 linking display 402 and communication device/interface 403, and a fifth path 410 linking internal secure wallet 405 and communication device/interface 403.

FIG. 5 illustrates various processes for providing credit card information using the pathways of FIG. 4. In step 501, a user desires to provide credit card information to a merchant. In step 502, the user's computing device 401 receives a request from the user to provide credit card information in a form usable by a merchant (for instance, electronically to be transmitted to the merchant or displayed to a user who can forward the information to a merchant). In step 503, the user's computing device 401 determines if an external wallet is present. If yes, the user's computing device 401 sends a request for credit card information to the external wallet in step 504. In step 505, the external wallet attempts to authenticate the merchant. For instance, the external wallet may determine whether the merchant is listed in a predetermined set of good merchants or bad merchants, or may attempt to authenticate credentials from the merchant has passed to the external wallet. For instance, an external wallet may attempt to check an online resource (for example, a Yellowpages™ or Whitepages™ listing) for information to authenticate the merchant.

Optionally, the external wallet may attempt to authenticate the user as well in step 507.

If the merchant has been authenticated in step 506 (as well as the user in step 507 if this step is used), then the external wallet may obtain a CVV in step 508. The external wallet may then forward the credit card information and CVV to merchant via path 406 in step 509. Finally, the external wallet may send generic content to display in the user's computing device 401's display screen via path 407 in step 510.

If the merchant (and/or user) was not authenticated in step 506, then the user's computing device may refused to release credit card information to the user and/or merchant in step 511.

Alternatively, if the merchant was not authenticated in step 506 (for example, no online listing available for the merchant) or if an external wallet is not present, then the user may attempt to use an internal secure wallet to obtain the credit card information and CVV in step 512. Here, the user's computing device 401 attempts to authenticate the user in step 513. If the user is authenticated from step 514, then the secure wallet obtains the credit card information and CVV in step 515. The secure wallet next sends the credit card information and CVV to the merchant via path 410. Next, the secure wallet since generic content to the display via path 409. Alternatively, from step 515, upon user request (and possible further authentication), the secure wallet displays credit card information and a CVV in display via path 409.

The user may then copy the information in display (from step 517) into a merchant's webpage or into forms for future credit card transactions.

FIG. 6 shows various processes for obtaining a card verification value in accordance with one or more aspects of the invention. In step 601, a secure wallet (either internal or external) is requested to obtain credit card information including a CVV.

In a first example, the system determines if a connection to a card issuer is available in step 602 (the prior obtaining of the CVV may occur at an earlier time, when connectivity was available, and the current step 602 may occur at the next burst of connectivity). If yes, then the secure wallet connects to the card issuer in step 603. The secure wallet authenticates itself and the card issuer and requests a CVV in step 604. In step 605 the secure wallet receives the CVV from the card issuer and forwards it as described in FIG. 5.

If no connection to a card issuer is available in step 602, then the secure wallet obtains a stored CVV from a local storage of one or more CVVs in step 606 and forwards the CVV as described in FIG. 5. In some embodiments, the refresh and coordination with the card issuer can occur without connectivity, using similar CVV generation engines running at the issuing bank and the consumer's device (e.g., smart phone, PC, USB device, etc.).

Later, when the secure wallet is synchronized with the card issuer, used CVVs may be replaced with new CVVs as needed. Alternatively, all CVVs previously sent to the secure wallet may be replaced with new CVVs, irrespective of whether the previous CVVs were used in a transaction.

In a second example, a secure wallet may not determine if a connection to a card issuer is available as shown in step 602. Rather, a secure wallet may only obtain a CVV from its local storage of one or more CVVs.

FIG. 7 shows various techniques of storing CVVs in one or more secure wallets. FIG. 7 includes a user's computing device 701 with a display 702. At least one of external secure wallet 703 (and interface 704) and internal secure wallet 705 is available to users computing device 701. CVVs may be stored as a list with individual entries as shown list 706. Alternatively, CVVs may be stored as a single string where each CVV is present as shown in string 707. The internal or external secure wallet may then parse the string 707 for the next (or random) CVV and provided as needed. Such a code-within-a-code may help reduce risk of man-in-the-middle attacks.

The features above are simply examples, and variations may be made as desired. For example, the CVV may be a static code assigned for the lifetime of a user's card. Alternatively, the CVV may be dynamically generated for each use of the card, different CVV codes can be generated for different transaction dollar values or limits, or for a predetermined duration of time (e.g., minutes, days, weeks, months, years, etc.). 

We claim:
 1. A process for providing a card verification value comprising: storing a plurality of card verification values as received from a card issuer, the plurality of card verifications values designated as new; authenticating a user to a processor; selecting one of the new card verification values; designating the selected card verification value as used; and sending the selected card verification value to a merchant along with credit card information pertaining to a purchase.
 2. The process according to claim 1, wherein authenticating includes receiving and checking user input to verify the user is an authorized user of a card.
 3. The process according to claim 1, further comprising: displaying generic information on a user interface in place of the selected card verification value.
 4. A process for providing credit card verification value comprising: storing a plurality of credit card verification values as received from a card issuer, the plurality of card verifications values designated as new; authenticating a user to a processor; selecting one of the new credit card verification values; designating the selected card verification value as used; and sending the selected card verification value to a user interface configured to display the selected card verification value to a user.
 5. The process according to claim 4, wherein authenticating includes receiving and checking user input to verify the user is an authorized user of a card.
 6. A computer-implemented process for providing a card verification value associated with a credit card relating to a credit account of a user, the credit card having a credit card number, the process comprising: receiving a plurality of card verification values from a computer system of a card issuer, the plurality of card verifications values designated as new; storing in a memory of computing device associated with the user the new card verification values; receiving user input; authenticating the user to the computing device via a processor of the computing device; selecting one of the new card verification values stored in the memory; designating the selected card verification value as used; and sending the selected card verification value to a computer system of a merchant along with the credit card number.
 7. The computer-implemented process according to claim 6, wherein sending the selected card verification value includes sending identification information of the user.
 8. The computer-implemented process according to claim 6, further comprising: displaying generic information on a display of the computing device in place of the selected card verification value.
 9. The computer-implemented process according to claim 6, wherein the memory is readily detachable from the computing device.
 10. The computer-implemented process according to claim 6, wherein the memory is part of the computing device.
 11. A computer-implemented process for providing a card verification value associated with a credit card relating to a credit account of a user, the credit card having a credit card number, the process comprising: receiving a plurality of credit card verification values from a computer system of a card issuer, the plurality of card verifications values designated as new; storing in a memory of computing device associated with the user the new credit card verification values; receiving user input; authenticating the user to the computing device via a processor of the computing device; selecting one of the new credit card verification values stored in the memory; designating the selected card verification value as used; and sending the selected credit card verification value to a display of the computing device to display the selected card verification value to a user.
 12. The computer-implemented process according to claim 11, wherein the memory is readily detachable from the computing device.
 13. The computer-implemented process according to claim 11, wherein the memory is part of the computing device.
 14. The process according to claim 1, further comprising: refreshing the used credit card verification values by replacing the used credit card verification values with new credit card verification values.
 15. The computer-implemented process according to claim 6, further comprising: refreshing the used credit card verification values by replacing the used credit card verification values with new credit card verification values. 